Artificial intelligence, or AI, is a branch of computer science dealing with intelligent behavior, learning and adaptation in machines. AI research is focused on producing machines that automate tasks requiring intelligent behavior. Real-world applications of AI include handwriting, speech, and facial recognition, computer and video games, and the ability to answer diagnostic and consumer questions.
Expert systems are a class of computer software that makes up a subset of artificial intelligence. Unlike more typical artificial intelligence models, which tend to be procedural, algorithmic, numerical, or mathematical, expert systems use empirical knowledge to solve problems in specific problem domains. In general, expert systems are employed to solve problems that require the knowledge and experience of human experts. Because knowledge is a fundamental element of expert systems, they are also referred to as knowledge-based systems.
Typically, an expert system is composed of two primary components: the knowledge base and the inference engine. The knowledge base is essentially the collection of domain-specific knowledge that is applied to the problem at hand. Knowledge bases are usually represented as ideas, facts, concepts, and statistical probabilities and their associative relationships. Knowledge bases are derived from human expert knowledge and encoded in a logical form that the expert system can understand. A knowledge base provides the backbone of the expert system and allows the system to accurately evaluate potential problems.
The inference engine forms the brain of the expert system. It emulates the human capability to arrive at conclusions by reasoning about the information in the knowledge base. Inference engines typically employ one of two types of inferencing: forward chaining and backward chaining. Forward chaining, or data driven inferencing, starts with available data and applies rules to the data to extract more information until a goal is reached. Backward chaining, or goal driven inferencing, begins with a list of goals and works backwards through the rules to see whether available data supports the goals.
Expert systems are used in many domains, including accounting, medical, oil exploration, video games, and consumer-product matching. While individual expert systems are applied to highly specific domains, each system can easily be adapted to another domain by changing the knowledge base. The inference engine can be applied to virtually any body of knowledge, provided the knowledge is encoded in a form understandable by the expert system.